import { del, get, post, put } from '~/utils/request'

/**
 * 获取所有通知公告
 * @returns 通知公告列表
 */
export function getNoticeList() {
  return get('/notice/list')
}

/**
 * 创建通知公告
 * @param noticeData 通知公告数据
 * @param noticeData.title 公告标题
 * @param noticeData.content 公告内容
 * @param noticeData.categoryId 分类ID
 * @returns 创建结果
 */
export function createNotice(noticeData: {
  title: string
  content: string
  categoryId: string
}) {
  return post('/notice/create', noticeData)
}

/**
 * 更新通知公告
 * @param id 公告ID
 * @param noticeData 通知公告更新数据
 * @param noticeData.title 公告标题
 * @param noticeData.content 公告内容
 * @param noticeData.categoryId 分类ID
 * @returns 更新结果
 */
export function updateNotice(
  id: string,
  noticeData: {
    title?: string
    content?: string
    categoryId?: string
  },
) {
  return put(`/notice/update/${id}`, noticeData)
}

/**
 * 删除通知公告
 * @param id 公告ID
 * @returns 删除结果
 */
export function deleteNotice(id: string) {
  return del(`/notice/delete/${id}`)
}
